package com.weiyuwqj.api.model;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Table(name = "bus_item_collect")
public class BusItemCollect implements Serializable {
    /**
     * 主键
     */
    @Id
    private Integer id;

    /**
     * 外键
     */
    @Column(name = "item_id")
    private Integer itemId;

    /**
     * 投资ID，不做外键
     */
    @Column(name = "invest_id")
    private Integer investId;

    /**
     * 投资用户ID，不做外键
     */
    @Column(name = "invest_user_id")
    private Integer investUserId;

    /**
     * 用户平台编号
     */
    @Column(name = "platform_id")
    private String platformId;

    /**
     * 当前期数
     */
    @Column(name = "collect_current_period")
    private Integer collectCurrentPeriod;

    /**
     * 总期数
     */
    @Column(name = "collect_total_period")
    private Integer collectTotalPeriod;

    /**
     * 应收总额
     */
    @Column(name = "collect_amount")
    private BigDecimal collectAmount;

    /**
     * 应收本金
     */
    @Column(name = "collect_principal")
    private BigDecimal collectPrincipal;

    /**
     * 应收利息
     */
    @Column(name = "collect_interest")
    private BigDecimal collectInterest;

    /**
     * 应收时间
     */
    @Column(name = "collect_time")
    private Date collectTime;

    /**
     * 实际已收总额
     */
    @Column(name = "actual_collect_amount")
    private BigDecimal actualCollectAmount;

    /**
     * 实际已收本金
     */
    @Column(name = "actual_collect_principal")
    private BigDecimal actualCollectPrincipal;

    /**
     * 实际已收利息
     */
    @Column(name = "actual_collect_interest")
    private BigDecimal actualCollectInterest;

    /**
     * 实际已收时间
     */
    @Column(name = "actual_collect_time")
    private Date actualCollectTime;

    /**
     * 加息券收益
     */
    @Column(name = "additional_rate_amount")
    private BigDecimal additionalRateAmount;

    /**
     * 交易状态：0-未完成 1-已完成
     */
    @Column(name = "collect_status")
    private Integer collectStatus;

    /**
     * 债转状态: 0.未债转 1.已债转
     */
    @Column(name = "debt_transfer_status")
    private Integer debtTransferStatus;

    /**
     * 添加时间
     */
    private Date addtime;

    /**
     * 添加ip
     */
    private String addip;

    /**
     * 获取主键
     *
     * @return id - 主键
     */
    public Integer getId() {
        return id;
    }

    /**
     * 设置主键
     *
     * @param id 主键
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取外键
     *
     * @return item_id - 外键
     */
    public Integer getItemId() {
        return itemId;
    }

    /**
     * 设置外键
     *
     * @param itemId 外键
     */
    public void setItemId(Integer itemId) {
        this.itemId = itemId;
    }

    /**
     * 获取投资ID，不做外键
     *
     * @return invest_id - 投资ID，不做外键
     */
    public Integer getInvestId() {
        return investId;
    }

    /**
     * 设置投资ID，不做外键
     *
     * @param investId 投资ID，不做外键
     */
    public void setInvestId(Integer investId) {
        this.investId = investId;
    }

    /**
     * 获取投资用户ID，不做外键
     *
     * @return invest_user_id - 投资用户ID，不做外键
     */
    public Integer getInvestUserId() {
        return investUserId;
    }

    /**
     * 设置投资用户ID，不做外键
     *
     * @param investUserId 投资用户ID，不做外键
     */
    public void setInvestUserId(Integer investUserId) {
        this.investUserId = investUserId;
    }

    /**
     * 获取当前期数
     *
     * @return collect_current_period - 当前期数
     */
    public Integer getCollectCurrentPeriod() {
        return collectCurrentPeriod;
    }

    /**
     * 设置当前期数
     *
     * @param collectCurrentPeriod 当前期数
     */
    public void setCollectCurrentPeriod(Integer collectCurrentPeriod) {
        this.collectCurrentPeriod = collectCurrentPeriod;
    }

    /**
     * 获取总期数
     *
     * @return collect_total_period - 总期数
     */
    public Integer getCollectTotalPeriod() {
        return collectTotalPeriod;
    }

    /**
     * 设置总期数
     *
     * @param collectTotalPeriod 总期数
     */
    public void setCollectTotalPeriod(Integer collectTotalPeriod) {
        this.collectTotalPeriod = collectTotalPeriod;
    }

    /**
     * 获取应收总额
     *
     * @return collect_amount - 应收总额
     */
    public BigDecimal getCollectAmount() {
        return collectAmount;
    }

    /**
     * 设置应收总额
     *
     * @param collectAmount 应收总额
     */
    public void setCollectAmount(BigDecimal collectAmount) {
        this.collectAmount = collectAmount;
    }

    /**
     * 获取应收本金
     *
     * @return collect_principal - 应收本金
     */
    public BigDecimal getCollectPrincipal() {
        return collectPrincipal;
    }

    /**
     * 设置应收本金
     *
     * @param collectPrincipal 应收本金
     */
    public void setCollectPrincipal(BigDecimal collectPrincipal) {
        this.collectPrincipal = collectPrincipal;
    }

    /**
     * 获取应收利息
     *
     * @return collect_interest - 应收利息
     */
    public BigDecimal getCollectInterest() {
        return collectInterest;
    }

    /**
     * 设置应收利息
     *
     * @param collectInterest 应收利息
     */
    public void setCollectInterest(BigDecimal collectInterest) {
        this.collectInterest = collectInterest;
    }

    /**
     * 获取应收时间
     *
     * @return collect_time - 应收时间
     */
    public Date getCollectTime() {
        return collectTime;
    }

    /**
     * 设置应收时间
     *
     * @param collectTime 应收时间
     */
    public void setCollectTime(Date collectTime) {
        this.collectTime = collectTime;
    }

    /**
     * 获取实际已收总额
     *
     * @return actual_collect_amount - 实际已收总额
     */
    public BigDecimal getActualCollectAmount() {
        return actualCollectAmount;
    }

    /**
     * 设置实际已收总额
     *
     * @param actualCollectAmount 实际已收总额
     */
    public void setActualCollectAmount(BigDecimal actualCollectAmount) {
        this.actualCollectAmount = actualCollectAmount;
    }

    /**
     * 获取实际已收本金
     *
     * @return actual_collect_principal - 实际已收本金
     */
    public BigDecimal getActualCollectPrincipal() {
        return actualCollectPrincipal;
    }

    /**
     * 设置实际已收本金
     *
     * @param actualCollectPrincipal 实际已收本金
     */
    public void setActualCollectPrincipal(BigDecimal actualCollectPrincipal) {
        this.actualCollectPrincipal = actualCollectPrincipal;
    }

    /**
     * 获取实际已收利息
     *
     * @return actual_collect_interest - 实际已收利息
     */
    public BigDecimal getActualCollectInterest() {
        return actualCollectInterest;
    }

    /**
     * 设置实际已收利息
     *
     * @param actualCollectInterest 实际已收利息
     */
    public void setActualCollectInterest(BigDecimal actualCollectInterest) {
        this.actualCollectInterest = actualCollectInterest;
    }

    /**
     * 获取实际已收时间
     *
     * @return actual_collect_time - 实际已收时间
     */
    public Date getActualCollectTime() {
        return actualCollectTime;
    }

    /**
     * 设置实际已收时间
     *
     * @param actualCollectTime 实际已收时间
     */
    public void setActualCollectTime(Date actualCollectTime) {
        this.actualCollectTime = actualCollectTime;
    }

    /**
     * 获取加息券收益
     *
     * @return additional_rate_amount - 加息券收益
     */
    public BigDecimal getAdditionalRateAmount() {
        return additionalRateAmount;
    }

    /**
     * 设置加息券收益
     *
     * @param additionalRateAmount 加息券收益
     */
    public void setAdditionalRateAmount(BigDecimal additionalRateAmount) {
        this.additionalRateAmount = additionalRateAmount;
    }

    /**
     * 获取交易状态：0-未完成 1-已完成
     *
     * @return collect_status - 交易状态：0-未完成 1-已完成
     */
    public Integer getCollectStatus() {
        return collectStatus;
    }

    /**
     * 设置交易状态：0-未完成 1-已完成
     *
     * @param collectStatus 交易状态：0-未完成 1-已完成
     */
    public void setCollectStatus(Integer collectStatus) {
        this.collectStatus = collectStatus;
    }

    /**
     * 获取添加时间
     *
     * @return addtime - 添加时间
     */
    public Date getAddtime() {
        return addtime;
    }

    /**
     * 设置添加时间
     *
     * @param addtime 添加时间
     */
    public void setAddtime(Date addtime) {
        this.addtime = addtime;
    }

    /**
     * 获取添加ip
     *
     * @return addip - 添加ip
     */
    public String getAddip() {
        return addip;
    }

    /**
     * 设置添加ip
     *
     * @param addip 添加ip
     */
    public void setAddip(String addip) {
        this.addip = addip;
    }

    public Integer getDebtTransferStatus() {
        return debtTransferStatus;
    }

    public void setDebtTransferStatus(Integer debtTransferStatus) {
        this.debtTransferStatus = debtTransferStatus;
    }

    /**
     * 获取 用户平台编号
     */
    public String getPlatformId() {
        return this.platformId;
    }

    /**
     * 设置 用户平台编号
     */
    public void setPlatformId(String platformId) {
        this.platformId = platformId;
    }
}